package com.holyn.guofang.model.webhttp.observable;

import com.holyn.guofang.model.webhttp.wo.ServiceTypeWo;
import com.holyn.guofang.model.webhttp.wo.StatusWo;

import io.reactivex.Observable;
import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.POST;

/**
 * Created by Holyn on 2017/7/30.
 */

public interface OnlineServiceObservable {

    /**
     * 功能说明:获取网上服务事宜分类列表。
     *
     * @param code 上级事宜项目代码(获取根目录级传空字符串)
     * @param parentID 上级事宜项目 ID(获取根目录级传 0)
     * @param grade 事宜项目等级
     *
     * 注:grade、code 和 parentID 只需要传一个参数就可以，若同时传了若干个则以 grade 最优先，当 grade 没传值且 code 和 parentID 两个同时传时以 code 为准。
     *
     * @return
     */
    @FormUrlEncoded
    @POST("listServiceType.ashx")
    Observable<ServiceTypeWo> listServiceType (
            @Field("code") String code,
            @Field("parentID") Integer parentID,
            @Field("grade") Integer grade);

    /**
     * 功能说明:提交商标事宜在线委托。
     * @param id 网店 ID (为1)
     * @param serviceID 事宜 ID（listServiceType请求返回的数据 ID）
     * @param content 摘要
     * @param company 公司名称
     * @param contact 联系人
     * @param QQ QQ号
     * @param telephone 电话
     * @param email E-mail
     * @return
     */
    @FormUrlEncoded
    @POST("addTradeMarkTrust.ashx")
    Observable<StatusWo> addTradeMarkTrust (
            @Field("id") Integer id,
            @Field("serviceID") Integer serviceID,
            @Field("content") String content,
            @Field("company") String company,
            @Field("contact") String contact,
            @Field("QQ") String QQ,
            @Field("telephone") String telephone,
            @Field("email") String email);
}
